package base.service;

import base.model.GoodsBaseModel;

import java.util.List;

/**
 * 登录业务逻辑接口，必须继承该接口并实现方法
 *
 * @author Kcjuly
 * @date 2024-04-25
 *
 */

public interface IGoodsBaseService {

    //todo 示例业务逻辑，完成作业时自行扩展

    /**
     * 商品查询，多个条件可以继续加参数重载方法
     * @param query query查询条件
     * @return boolean
     */
    List<GoodsBaseModel> getList(Object query);


    /**
     * 商品录入业务逻辑，返回bool处理结果
     * @param goodsBaseModel 要保存的数据模型
     * @return boolean
     */
    boolean addGoods(GoodsBaseModel goodsBaseModel);


    /**
     * 商品编辑业务逻辑，返回bool处理结果
     * @param goodsBaseModel 要保存的数据模型
     * @return boolean
     */
    boolean editGoods(GoodsBaseModel goodsBaseModel);


    /**
     * 商品删除业务逻辑，返回bool处理结果
     * @param primaryKey 根据商品编号删除
     * @return boolean
     */
    boolean delete(Object primaryKey);


    /**
     * 商品库存增加或减少，返回bool处理结果
     * @param goods 商品编号
     * @param number 根据商品编号管理库存
     * @return boolean
     */
    boolean setInventory(Object goods,int number);

}
